//v.3.0 build 110707

/*
Copyright DHTMLX LTD. http://www.dhtmlx.com
You allowed to use this component or parts of it under GPL terms
To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com
*/
dhtmlx=function(a){
    for(var b in a)dhtmlx[b]=a[b];return dhtmlx
    };
    
dhtmlx.extend_api=function(a,b,c){
    var d=window[a];
    if(d)window[a]=function(a){
        if(a&&typeof a=="object"&&!a.tagName){
            var c=d.apply(this,b._init?b._init(a):arguments),f;
            for(f in dhtmlx)if(b[f])this[b[f]](dhtmlx[f]);for(f in a)if(b[f])this[b[f]](a[f]);else f.indexOf("on")==0&&this.attachEvent(f,a[f])
                }else c=d.apply(this,arguments);
        b._patch&&b._patch(this);
        return c||this
        },window[a].prototype=d.prototype,c&&dhtmlXHeir(window[a].prototype,c)
        };
dhtmlxAjax={
    get:function(a,b){
        var c=new dtmlXMLLoaderObject(!0);
        c.async=arguments.length<3;
        c.waitCall=b;
        c.loadXML(a);
        return c
        },
    post:function(a,b,c){
        var d=new dtmlXMLLoaderObject(!0);
        d.async=arguments.length<4;
        d.waitCall=c;
        d.loadXML(a,!0,b);
        return d
        },
    getSync:function(a){
        return this.get(a,null,!0)
        },
    postSync:function(a,b){
        return this.post(a,b,null,!0)
        }
    };
function dtmlXMLLoaderObject(a,b,c,d){
    this.xmlDoc="";
    this.async=typeof c!="undefined"?c:!0;
    this.onloadAction=a||null;
    this.mainObject=b||null;
    this.waitCall=null;
    this.rSeed=d||!1;
    return this
    }
dtmlXMLLoaderObject.prototype.waitLoadFunction=function(a){
    var b=!0;
    return this.check=function(){
        if(a&&a.onloadAction!=null&&(!a.xmlDoc.readyState||a.xmlDoc.readyState==4)&&b){
            b=!1;
            if(typeof a.onloadAction=="function")a.onloadAction(a.mainObject,null,null,null,a);
            if(a.waitCall)a.waitCall.call(this,a),a.waitCall=null
                }
            }
};
dtmlXMLLoaderObject.prototype.getXMLTopNode=function(a,b){
    if(this.xmlDoc.responseXML){
        var c=this.xmlDoc.responseXML.getElementsByTagName(a);
        c.length==0&&a.indexOf(":")!=-1&&(c=this.xmlDoc.responseXML.getElementsByTagName(a.split(":")[1]));
        var d=c[0]
        }
        else d=this.xmlDoc.documentElement;if(d)return this._retry=!1,d;if(_isIE&&!this._retry){
    var e=this.xmlDoc.responseText,b=this.xmlDoc;this._retry=!0;this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM");this.xmlDoc.async=!1;this.xmlDoc.loadXML(e);return this.getXMLTopNode(a,
        b)
    }
    dhtmlxError.throwError("LoadXML","Incorrect XML",[b||this.xmlDoc,this.mainObject]);return document.createElement("DIV")
    };
    dtmlXMLLoaderObject.prototype.loadXMLString=function(a){
    if(_isIE)this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"),this.xmlDoc.async=this.async,this.xmlDoc.onreadystatechange=function(){},this.xmlDoc.loadXML(a);else{
    var b=new DOMParser;this.xmlDoc=b.parseFromString(a,"text/xml")
    }
    if(this.onloadAction)this.onloadAction(this.mainObject,null,null,null,this);if(this.waitCall)this.waitCall(),this.waitCall=null
    };
    dtmlXMLLoaderObject.prototype.loadXML=function(a,b,c,d){
    this.rSeed&&(a+=(a.indexOf("?")!=-1?"&":"?")+"a_dhx_rSeed="+(new Date).valueOf());this.filePath=a;this.xmlDoc=!_isIE&&window.XMLHttpRequest?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP");if(this.async)this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this);this.xmlDoc.open(b?"POST":"GET",a,this.async);d?(this.xmlDoc.setRequestHeader("User-Agent","dhtmlxRPC v0.1 ("+navigator.userAgent+")"),this.xmlDoc.setRequestHeader("Content-type",
        "text/xml")):b&&this.xmlDoc.setRequestHeader("Content-type","application/x-www-form-urlencoded");this.xmlDoc.setRequestHeader("X-Requested-With","XMLHttpRequest");this.xmlDoc.send(c);this.async||(new this.waitLoadFunction(this))()
    };
    dtmlXMLLoaderObject.prototype.destructor=function(){
    return this.setXSLParamValue=this.getXMLTopNode=this.xmlNodeToJSON=this.doSerialization=this.loadXMLString=this.loadXML=this.doXSLTransToString=this.doXSLTransToObject=this.doXPathOpera=this.doXPath=this.xmlDoc=this.mainObject=this.onloadAction=this.filePath=this.rSeed=this.async=this._retry=this._getAllNamedChilds=this._filterXPath=null
    };
    dtmlXMLLoaderObject.prototype.xmlNodeToJSON=function(a){
    for(var b={},c=0;c<a.attributes.length;c++)b[a.attributes[c].name]=a.attributes[c].value;b._tagvalue=a.firstChild?a.firstChild.nodeValue:"";for(c=0;c<a.childNodes.length;c++){
    var d=a.childNodes[c].tagName;d&&(b[d]||(b[d]=[]),b[d].push(this.xmlNodeToJSON(a.childNodes[c])))
    }
    return b
    };
    function callerFunction(a,b){
    return this.handler=function(c){
    if(!c)c=window.event;a(c,b);return!0
    }
}
function getAbsoluteLeft(a){
    return getOffset(a).left
    }
    function getAbsoluteTop(a){
    return getOffset(a).top
    }
    function getOffsetSum(a){
    for(var b=0,c=0;a;)b+=parseInt(a.offsetTop),c+=parseInt(a.offsetLeft),a=a.offsetParent;return{
    top:b,
    left:c
    }
}
function getOffsetRect(a){
var b=a.getBoundingClientRect(),c=document.body,d=document.documentElement,e=window.pageYOffset||d.scrollTop||c.scrollTop,g=window.pageXOffset||d.scrollLeft||c.scrollLeft,f=d.clientTop||c.clientTop||0,h=d.clientLeft||c.clientLeft||0,i=b.top+e-f,k=b.left+g-h;return{
top:Math.round(i),
    left:Math.round(k)
}
}
function getOffset(a){
return a.getBoundingClientRect?getOffsetRect(a):getOffsetSum(a)
}
function convertStringToBoolean(a){
typeof a=="string"&&(a=a.toLowerCase());switch(a){
case "1":case "true":case "yes":case "y":case 1:case !0:return!0;default:return!1
}
}
function getUrlSymbol(a){
return a.indexOf("?")!=-1?"&":"?"
}
function dhtmlDragAndDropObject(){
if(window.dhtmlDragAndDrop)return window.dhtmlDragAndDrop;this.dragStartObject=this.dragStartNode=this.dragNode=this.lastLanding=0;this.tempDOMM=this.tempDOMU=null;this.waitDrag=0;window.dhtmlDragAndDrop=this;return this
}
dhtmlDragAndDropObject.prototype.removeDraggableItem=function(a){
a.onmousedown=null;a.dragStarter=null;a.dragLanding=null
};
dhtmlDragAndDropObject.prototype.addDraggableItem=function(a,b){
a.onmousedown=this.preCreateDragCopy;a.dragStarter=b;this.addDragLanding(a,b)
};
dhtmlDragAndDropObject.prototype.addDragLanding=function(a,b){
a.dragLanding=b
};
dhtmlDragAndDropObject.prototype.preCreateDragCopy=function(a){
if(!((a||window.event)&&(a||event).button==2)){
if(window.dhtmlDragAndDrop.waitDrag)return window.dhtmlDragAndDrop.waitDrag=0,document.body.onmouseup=window.dhtmlDragAndDrop.tempDOMU,document.body.onmousemove=window.dhtmlDragAndDrop.tempDOMM,!1;window.dhtmlDragAndDrop.dragNode&&window.dhtmlDragAndDrop.stopDrag(a);window.dhtmlDragAndDrop.waitDrag=1;window.dhtmlDragAndDrop.tempDOMU=document.body.onmouseup;window.dhtmlDragAndDrop.tempDOMM=
document.body.onmousemove;window.dhtmlDragAndDrop.dragStartNode=this;window.dhtmlDragAndDrop.dragStartObject=this.dragStarter;document.body.onmouseup=window.dhtmlDragAndDrop.preCreateDragCopy;document.body.onmousemove=window.dhtmlDragAndDrop.callDrag;window.dhtmlDragAndDrop.downtime=(new Date).valueOf();a&&a.preventDefault&&a.preventDefault();return!1
}
};
dhtmlDragAndDropObject.prototype.callDrag=function(a){
if(!a)a=window.event;dragger=window.dhtmlDragAndDrop;if(!((new Date).valueOf()-dragger.downtime<100)){
if(!dragger.dragNode)if(dragger.waitDrag){
dragger.dragNode=dragger.dragStartObject._createDragNode(dragger.dragStartNode,a);if(!dragger.dragNode)return dragger.stopDrag();dragger.dragNode.onselectstart=function(){
return!1
};
dragger.gldragNode=dragger.dragNode;document.body.appendChild(dragger.dragNode);document.body.onmouseup=dragger.stopDrag;dragger.waitDrag=
0;dragger.dragNode.pWindow=window;dragger.initFrameRoute()
}else return dragger.stopDrag(a,!0);if(dragger.dragNode.parentNode!=window.document.body&&dragger.gldragNode){
    var b=dragger.gldragNode;if(dragger.gldragNode.old)b=dragger.gldragNode.old;b.parentNode.removeChild(b);var c=dragger.dragNode.pWindow;b.pWindow&&b.pWindow.dhtmlDragAndDrop.lastLanding&&b.pWindow.dhtmlDragAndDrop.lastLanding.dragLanding._dragOut(b.pWindow.dhtmlDragAndDrop.lastLanding);if(_isIE){
    var d=document.createElement("Div");d.innerHTML=
    dragger.dragNode.outerHTML;dragger.dragNode=d.childNodes[0]
    }else dragger.dragNode=dragger.dragNode.cloneNode(!0);dragger.dragNode.pWindow=window;dragger.gldragNode.old=dragger.dragNode;document.body.appendChild(dragger.dragNode);c.dhtmlDragAndDrop.dragNode=dragger.dragNode
    }
    dragger.dragNode.style.left=a.clientX+15+(dragger.fx?dragger.fx*-1:0)+(document.body.scrollLeft||document.documentElement.scrollLeft)+"px";dragger.dragNode.style.top=a.clientY+3+(dragger.fy?dragger.fy*-1:0)+(document.body.scrollTop||
        document.documentElement.scrollTop)+"px";var e=a.srcElement?a.srcElement:a.target;dragger.checkLanding(e,a)
    }
};
dhtmlDragAndDropObject.prototype.calculateFramePosition=function(a){
    if(window.name){
    for(var b=parent.frames[window.name].frameElement.offsetParent,c=0,d=0;b;)c+=b.offsetLeft,d+=b.offsetTop,b=b.offsetParent;if(parent.dhtmlDragAndDrop){
    var e=parent.dhtmlDragAndDrop.calculateFramePosition(1);c+=e.split("_")[0]*1;d+=e.split("_")[1]*1
    }
    if(a)return c+"_"+d;else this.fx=c;this.fy=d
    }
    return"0_0"
    };
    dhtmlDragAndDropObject.prototype.checkLanding=function(a,b){
    a&&a.dragLanding?(this.lastLanding&&this.lastLanding.dragLanding._dragOut(this.lastLanding),this.lastLanding=a,this.lastLanding=this.lastLanding.dragLanding._dragIn(this.lastLanding,this.dragStartNode,b.clientX,b.clientY,b),this.lastLanding_scr=_isIE?b.srcElement:b.target):a&&a.tagName!="BODY"?this.checkLanding(a.parentNode,b):(this.lastLanding&&this.lastLanding.dragLanding._dragOut(this.lastLanding,b.clientX,b.clientY,b),this.lastLanding=
        0,this._onNotFound&&this._onNotFound())
    };
    dhtmlDragAndDropObject.prototype.stopDrag=function(a,b){
    dragger=window.dhtmlDragAndDrop;if(!b){
    dragger.stopFrameRoute();var c=dragger.lastLanding;dragger.lastLanding=null;c&&c.dragLanding._drag(dragger.dragStartNode,dragger.dragStartObject,c,_isIE?event.srcElement:a.target)
    }
    dragger.lastLanding=null;dragger.dragNode&&dragger.dragNode.parentNode==document.body&&dragger.dragNode.parentNode.removeChild(dragger.dragNode);dragger.dragNode=0;dragger.gldragNode=0;dragger.fx=0;dragger.fy=0;dragger.dragStartNode=
    0;dragger.dragStartObject=0;document.body.onmouseup=dragger.tempDOMU;document.body.onmousemove=dragger.tempDOMM;dragger.tempDOMU=null;dragger.tempDOMM=null;dragger.waitDrag=0
    };
    dhtmlDragAndDropObject.prototype.stopFrameRoute=function(a){
    a&&window.dhtmlDragAndDrop.stopDrag(1,1);for(var b=0;b<window.frames.length;b++)try{
    window.frames[b]!=a&&window.frames[b].dhtmlDragAndDrop&&window.frames[b].dhtmlDragAndDrop.stopFrameRoute(window)
    }catch(c){}
    try{
    parent.dhtmlDragAndDrop&&parent!=window&&parent!=a&&parent.dhtmlDragAndDrop.stopFrameRoute(window)
    }catch(d){}
};
dhtmlDragAndDropObject.prototype.initFrameRoute=function(a,b){
    if(a)window.dhtmlDragAndDrop.preCreateDragCopy(),window.dhtmlDragAndDrop.dragStartNode=a.dhtmlDragAndDrop.dragStartNode,window.dhtmlDragAndDrop.dragStartObject=a.dhtmlDragAndDrop.dragStartObject,window.dhtmlDragAndDrop.dragNode=a.dhtmlDragAndDrop.dragNode,window.dhtmlDragAndDrop.gldragNode=a.dhtmlDragAndDrop.dragNode,window.document.body.onmouseup=window.dhtmlDragAndDrop.stopDrag,window.waitDrag=0,!_isIE&&b&&(!_isFF||_FFrv<1.8)&&window.dhtmlDragAndDrop.calculateFramePosition();
    try{
    parent.dhtmlDragAndDrop&&parent!=window&&parent!=a&&parent.dhtmlDragAndDrop.initFrameRoute(window)
    }catch(c){}
    for(var d=0;d<window.frames.length;d++)try{
    window.frames[d]!=a&&window.frames[d].dhtmlDragAndDrop&&window.frames[d].dhtmlDragAndDrop.initFrameRoute(window,!a||b?1:0)
    }catch(e){}
};
_OperaRv=_KHTMLrv=_FFrv=_isChrome=_isMacOS=_isKHTML=_isOpera=_isIE=_isFF=!1;navigator.userAgent.indexOf("Macintosh")!=-1&&(_isMacOS=!0);navigator.userAgent.toLowerCase().indexOf("chrome")>-1&&(_isChrome=!0);
    navigator.userAgent.indexOf("Safari")!=-1||navigator.userAgent.indexOf("Konqueror")!=-1?(_KHTMLrv=parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf("Safari")+7,5)),_KHTMLrv>525?(_isFF=!0,_FFrv=1.9):_isKHTML=!0):navigator.userAgent.indexOf("Opera")!=-1?(_isOpera=!0,_OperaRv=parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf("Opera")+6,3))):navigator.appName.indexOf("Microsoft")!=-1?(_isIE=!0,navigator.appVersion.indexOf("MSIE 8.0")!=-1&&document.compatMode!="BackCompat"&&
        (_isIE=8),navigator.appVersion.indexOf("MSIE 9.0")!=-1&&document.compatMode!="BackCompat"&&(_isIE=8)):(_isFF=!0,_FFrv=parseFloat(navigator.userAgent.split("rv:")[1]));
    dtmlXMLLoaderObject.prototype.doXPath=function(a,b,c,d){
    if(_isKHTML||!_isIE&&!window.XPathResult)return this.doXPathOpera(a,b);if(_isIE)return b||(b=this.xmlDoc.nodeName?this.xmlDoc:this.xmlDoc.responseXML),b||dhtmlxError.throwError("LoadXML","Incorrect XML",[b||this.xmlDoc,this.mainObject]),c!=null&&b.setProperty("SelectionNamespaces","xmlns:xsl='"+c+"'"),d=="single"?b.selectSingleNode(a):b.selectNodes(a)||[];else{
    var e=b;
    b||(b=this.xmlDoc.nodeName?this.xmlDoc:this.xmlDoc.responseXML);
    b||dhtmlxError.throwError("LoadXML",
        "Incorrect XML",[b||this.xmlDoc,this.mainObject]);
    b.nodeName.indexOf("document")!=-1?e=b:(e=b,b=b.ownerDocument);
    var g=XPathResult.ANY_TYPE;
    if(d=="single")g=XPathResult.FIRST_ORDERED_NODE_TYPE;
    var f=[],h=b.evaluate(a,e,function(){
        return c
        },g,null);
    if(g==XPathResult.FIRST_ORDERED_NODE_TYPE)return h.singleNodeValue;
    for(var i=h.iterateNext();i;)f[f.length]=i,i=h.iterateNext();
    return f
    }
};

function j(){
    if(!this.catches)this.catches=[];
    return this
    }
    j.prototype.catchError=function(a,b){
    this.catches[a]=b
    };
j.prototype.throwError=function(a,b,c){
    if(this.catches[a])return this.catches[a](a,b,c);
    if(this.catches.ALL)return this.catches.ALL(a,b,c);
    alert("Error type: "+a+"\nDescription: "+b);
    return null
    };
    
window.dhtmlxError=new j;
dtmlXMLLoaderObject.prototype.doXPathOpera=function(a,b){
    var c=a.replace(/[\/]+/gi,"/").split("/"),d=null,e=1;
    if(!c.length)return[];
    if(c[0]==".")d=[b];
    else if(c[0]=="")d=(this.xmlDoc.responseXML||this.xmlDoc).getElementsByTagName(c[e].replace(/\[[^\]]*\]/g,"")),e++;else return[];
    for(;e<c.length;e++)d=this._getAllNamedChilds(d,c[e]);
    c[e-1].indexOf("[")!=-1&&(d=this._filterXPath(d,c[e-1]));
    return d
    };
dtmlXMLLoaderObject.prototype._filterXPath=function(a,b){
    for(var c=[],b=b.replace(/[^\[]*\[\@/g,"").replace(/[\[\]\@]*/g,""),d=0;d<a.length;d++)a[d].getAttribute(b)&&(c[c.length]=a[d]);
    return c
    };
dtmlXMLLoaderObject.prototype._getAllNamedChilds=function(a,b){
    var c=[];
    _isKHTML&&(b=b.toUpperCase());
    for(var d=0;d<a.length;d++)for(var e=0;e<a[d].childNodes.length;e++)_isKHTML?a[d].childNodes[e].tagName&&a[d].childNodes[e].tagName.toUpperCase()==b&&(c[c.length]=a[d].childNodes[e]):a[d].childNodes[e].tagName==b&&(c[c.length]=a[d].childNodes[e]);
    return c
    };
    
function dhtmlXHeir(a,b){
    for(var c in b)typeof b[c]=="function"&&(a[c]=b[c]);return a
    }
function dhtmlxEvent(a,b,c){
    a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent&&a.attachEvent("on"+b,c)
    }
    dtmlXMLLoaderObject.prototype.xslDoc=null;
dtmlXMLLoaderObject.prototype.setXSLParamValue=function(a,b,c){
    if(!c)c=this.xslDoc;
    if(c.responseXML)c=c.responseXML;
    var d=this.doXPath("/xsl:stylesheet/xsl:variable[@name='"+a+"']",c,"http://www.w3.org/1999/XSL/Transform","single");
    if(d!=null)d.firstChild.nodeValue=b
        };
dtmlXMLLoaderObject.prototype.doXSLTransToObject=function(a,b){
    if(!a)a=this.xslDoc;
    if(a.responseXML)a=a.responseXML;
    if(!b)b=this.xmlDoc;
    if(b.responseXML)b=b.responseXML;
    if(_isIE){
        d=new ActiveXObject("Msxml2.DOMDocument.3.0");
        try{
            b.transformNodeToObject(a,d)
            }catch(c){
            d=b.transformNode(a)
            }
        }else{
    if(!this.XSLProcessor)this.XSLProcessor=new XSLTProcessor,this.XSLProcessor.importStylesheet(a);
    var d=this.XSLProcessor.transformToDocument(b)
    }
    return d
};
dtmlXMLLoaderObject.prototype.doXSLTransToString=function(a,b){
    var c=this.doXSLTransToObject(a,b);
    return typeof c=="string"?c:this.doSerialization(c)
    };
    
dtmlXMLLoaderObject.prototype.doSerialization=function(a){
    if(!a)a=this.xmlDoc;
    if(a.responseXML)a=a.responseXML;
    if(_isIE)return a.xml;
    else{
        var b=new XMLSerializer;
        return b.serializeToString(a)
        }
    };
dhtmlxEventable=function(a){
    a.attachEvent=function(a,c,d){
        a="ev_"+a.toLowerCase();
        this[a]||(this[a]=new this.eventCatcher(d||this));
        return a+":"+this[a].addEvent(c)
        };
        
    a.callEvent=function(a,c){
        a="ev_"+a.toLowerCase();
        return this[a]?this[a].apply(this,c):!0
        };
        
    a.checkEvent=function(a){
        return!!this["ev_"+a.toLowerCase()]
        };
        
    a.eventCatcher=function(a){
        var c=[],d=function(){
            for(var d=!0,g=0;g<c.length;g++)if(c[g]!=null)var f=c[g].apply(a,arguments),d=d&&f;return d
            };
            
        d.addEvent=function(a){
            typeof a!="function"&&
            (a=eval(a));
            return a?c.push(a)-1:!1
            };
            
        d.removeEvent=function(a){
            c[a]=null
            };
            
        return d
        };
        
    a.detachEvent=function(a){
        if(a!=!1){
            var c=a.split(":");
            this[c[0]].removeEvent(c[1])
            }
        };
    
a.detachAllEvents=function(){
    for(var a in this)a.indexOf("ev_")==0&&delete this[a]
    }
};
(function(){
    var a=dhtmlx.message=function(b,c,d,e){
        if(!a.area)a.area=document.createElement("DIV"),a.area.style.cssText="position:absolute;right:5px;width:250px;z-index:100;",a.area.className="dhtmlx_message_area",a.area.style[a.defPosition]="5px",document.body.appendChild(a.area);
        typeof b!="object"&&(b={
            text:b,
            type:c,
            lifetime:d,
            id:e
        });
        b.type=b.type||"info";
        b.id=b.id||a.uid();
        b.lifetime=b.lifetime||a.defTimeout;
        a.hide(b.id);
        var g=document.createElement("DIV");
        g.style.cssText="border-radius:4px; padding:4px 4px 4px 20px;background-color:#FFFFCC;font-size:12px;font-family:Tahoma;color:navy;z-index: 10000;margin:5px;border:1px solid lightgrey;";
        g.innerHTML=b.text;
        g.className=b.type;
        a.defPosition=="bottom"&&a.area.firstChild?a.area.insertBefore(g,a.area.firstChild):a.area.appendChild(g);
        a.timers[b.id]=window.setTimeout(function(){
            a.hide(b.id)
            },b.lifetime);
        a.pull[b.id]=g;
        return b.id
        };
        
    a.defTimeout=4E3;
    a.defPosition="top";
    a.pull={};
    
    a.timers={};
    
    a.seed=(new Date).valueOf();
    a.uid=function(){
        return a.seed++
        };
        
    a.hideAll=function(){
        for(var b in a.pull)a.hide(b)
            };
            
    a.hide=function(b){
        var c=a.pull[b];
        c&&c.parentNode&&(c.parentNode.removeChild(c),window.clearTimeout(a.timers[b]),
            delete a.pull[b])
        }
    })();

//v.3.0 build 110707

/*
Copyright DHTMLX LTD. http://www.dhtmlx.com
You allowed to use this component or parts of it under GPL terms
To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com
*/